 /*******************************************************************************
  * Copyright (c) 2000, 2005 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
  *
  * Contributors:
  * IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.ui.console;

 /**
  * A console factory extension is responsible for opening a console in the console view.
  * Extensions appear on a menu in the console view, and their <code>openConsole</code>
  * method is called when the action is invoked. Implementations may choose to open a new
  * console or activate an existing console. The extension point used to contribute a
  * console factory is <code>org.eclipse.ui.console.consoleFactories</code>.
  * <p>
  * Following is an example console factory extension.
  * <pre>
  * &lt;extension point="org.eclipse.ui.console.consoleFactories"&gt;
  * &lt;consoleFactory
  * label="Command Console"
  * icon="icons\cmd_console.gif"
  * class="com.example.CommandConsoleFactory"&gt;
  * &lt;/consoleFactory&gt;
  * &lt;/extension&gt;
  * </pre>
  * An action appears in the console view's 'Open Console' drop-down menu with the
  * corresponding <code>label</code> and optional <code>icon</code>. When the action
  * is invoked, the specified <code>class</code> is instantiated and called to
  * open a console, via the method <code>openConsole()</code>.
  * </p>
  * <p>
  * Clients providing console factory extensions are intended to implement
  * this interface.
  * </p>
  * @since 3.1
  */
 public interface IConsoleFactory {
     /**
      * Opens a console in the console view. Implementations may create a new
      * console or activate an existing console.
      */
     public void openConsole();

 }

